import { mustWriteDom, noMustWriteDom } from './common'

export const tileTbody = [
  {
    name: 'source',
    optionType: (h, vm) => {
      return h('div', {
        class: 'Default a_hover',
        on: {
          click: () => {
            console.log(vm)
          }
        }
      }, 'Sources')
    },
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        mustWriteDom(h),
        h('span', {}, '，需要传入一个 '),
        h('span', {}, 'Sources.createSourceArcgis'),
        h('span', {}, ' 或 '),
        h('span', {}, 'Sources.createSourceXYZ')
      ])
    }
  },
  {
    name: 'visible',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否显示该图层，可选值：true 或 false')
      ])
    }
  },
  {
    name: 'opacity',
    optionType: 'Number',
    defaultValue: 1,
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，透明度，范围值：0～1')
      ])
    }
  },
  {
    name: 'zIndex',
    optionType: 'Number',
    defaultValue: 0,
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，图层的显示等级，范围值：[无限小，无限大]')
      ])
    }
  }
]

export const vectorTbody = [
  {
    name: 'source',
    optionType: (h, vm) => {
      return h('div', {
        class: 'Default a_hover',
        on: {
          click: () => {
            console.log(vm)
          }
        }
      }, 'Sources')
    },
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        mustWriteDom(h),
        h('span', {}, '，需要传入一个 '),
        h('span', {}, 'Sources.createSourceVector')
      ])
    }
  },
  {
    name: 'visible',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否显示该图层，可选值：true 或 false')
      ])
    }
  },
  {
    name: 'opacity',
    optionType: 'Number',
    defaultValue: 1,
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，透明度，范围值：0～1')
      ])
    }
  },
  {
    name: 'zIndex',
    optionType: 'Number',
    defaultValue: 0,
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，图层的显示等级，范围值：[无限小，无限大]')
      ])
    }
  }
]

export const imageTbody = [
  {
    name: 'source',
    optionType: (h, vm) => {
      return h('div', {
        class: 'Default a_hover',
        on: {
          click: () => {
            console.log(vm)
          }
        }
      }, 'Sources')
    },
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        mustWriteDom(h),
        h('span', {}, '，需要传入一个 '),
        h('span', {}, 'Sources.createSourceImage')
      ])
    }
  },
  {
    name: 'visible',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否显示该图层，可选值：true 或 false')
      ])
    }
  },
  {
    name: 'opacity',
    optionType: 'Number',
    defaultValue: 1,
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，透明度，范围值：0～1')
      ])
    }
  },
  {
    name: 'zIndex',
    optionType: 'Number',
    defaultValue: 0,
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，图层的显示等级，范围值：[无限小，无限大]')
      ])
    }
  }
]

export const kmlTbody = [
  {
    name: 'url',
    optionType: 'String',
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        mustWriteDom(h),
        h('span', {}, '，需要传入一个 kml 的文件路径，暂不支持接口直接返回kml字符串')
      ])
    }
  },
  {
    name: 'name',
    optionType: 'String',
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，可传入一个name值，用于该图层的标记')
      ])
    }
  }
]

export const iconTbody = [
  {
    name: 'features',
    optionType: (h, vm) => {
      return h('div', {
        class: 'Default a_hover',
        on: {
          click: () => {
            console.log(vm)
          }
        }
      }, '[Features]')
    },
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        mustWriteDom(h),
        h('span', {}, '，需要传入一个 '),
        h('span', {}, 'Features.createFeatureIcon 的数组，即多个feature组成的数组')
      ])
    }
  },
  {
    name: 'layerName',
    optionType: 'String',
    defaultValue: "' '",
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，可传入一个layerName值，用于该图层的标记')
      ])
    }
  },
  {
    name: 'zIndex',
    optionType: 'Number',
    defaultValue: 1,
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，图层的显示等级，范围值：[无限小，无限大]')
      ])
    }
  }
]

export const overlayTbody = [
  {
    name: 'element',
    optionType: 'DOM Element',
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        mustWriteDom(h),
        h('span', {}, '，需要传入一个 '),
        h('span', {}, 'DOM元素')
      ])
    }
  },
  {
    name: 'position',
    optionType: 'Array',
    defaultValue: 'undefined',
    desc: (h) => {
      return h('div', {}, [
        mustWriteDom(h),
        h('span', {}, '，需要传入一个 '),
        h('span', {}, '位置信息，使用数组表示，传入格式：[经度(Number), 纬度(Number)]')
      ])
    }
  },
  {
    name: 'offset',
    optionType: 'Array',
    defaultValue: '[0, -5]',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，可传入一个 '),
        h('span', {}, '偏移量，使用数组表示，数组第一个参数为上下偏移量，第二个参数为左右偏移量')
      ])
    }
  },
  {
    name: 'stopEvent',
    optionType: 'Boolean',
    defaultValue: 'false',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，用于控制点击Overlay时，是否冒泡，ture为冒泡，false为不冒泡')
      ])
    }
  }
]
